%% FIGURE A-23
clear all
clc
% Add path 
% Determine where your m-file's folder is.
folder = fileparts(which("Figure_A_23.m")); 
% Add that folder plus all subfolders to the path.
addpath(genpath(folder)); 

% Saving path
file_dir = what('Figures'); 
spath=file_dir.path;

% Setting
hor=20;
jhor=0:hor;
Run_color_settings
% LOAD DATA
ResultsIP02=load("Results/DFMDGP_IPIVLag2.mat");
ResultsIP04=load("Results/DFMDGP_IPIVLag4.mat");
ResultsUnem02=load("Results/DFMDGP_UnemIVLag2.mat");
ResultsUnem04=load("Results/DFMDGP_UnemIVLag4.mat");

% Plot
clf
N_plot=2;
pln=1;
plotColumns=2;
figure(1)
for j=1:N_plot
            grid on
            pl=subplot(ceil(N_plot/plotColumns),plotColumns,pln);
            hold on
            
           if j==1
            % Coverage rate IP
            plot(jhor,0.95*ones(size(1:hor+1)),'k','LineWidth',2)
            p0=plot(jhor,ResultsIP02.Results.CV.Pool.seqblock', '-','LineWidth',3,'Color', flexiblecolor); 
            p1=plot(jhor,ResultsIP02.Results.CV.Pool.seqblock_bs1', '-o','LineWidth',3,'Color', blocksize1color);
            p2=plot(jhor,ResultsIP02.Results.CV.Pool.seqblock_bs2', '-square','LineWidth',3,'Color', blocksize2color); 
            hold off; axis tight
            xlim([0 hor]);
            set(gca,'XTick',0:4:hor,'XTickLabel',cellstr(num2str((0:4:hor)')),'Layer','top','FontSize',14)
            xlabel('Horizon')  
            lh=legend([p0 p1 p2],{'Flexible block size';'Block size=4';'Block size=20'},'FontSize',16,'Location','southwest','Box','off');
            ylim([0 1]) 
            yticks(0:0.2:1)
            title('p=2','FontSize',16,'FontWeight','normal')

            elseif j==2
            % Coverage rate IP
            plot(jhor,0.95*ones(size(1:hor+1)),'k','LineWidth',2)
            p0=plot(jhor,ResultsIP04.Results.CV.Pool.seqblock', '-','LineWidth',3,'Color', flexiblecolor); 
            p1=plot(jhor,ResultsIP04.Results.CV.Pool.seqblock_bs1', '-o','LineWidth',3,'Color', blocksize1color);
            p2=plot(jhor,ResultsIP04.Results.CV.Pool.seqblock_bs2', '-square','LineWidth',3,'Color', blocksize2color); 
            hold off; axis tight
            xlim([0 hor]);
            set(gca,'XTick',0:4:hor,'XTickLabel',cellstr(num2str((0:4:hor)')),'Layer','top','FontSize',14)
            xlabel('Horizon')  
            %lh=legend([p0 p1 p2],{'Flexible block size';'Block size=4';'Block size=10'},'FontSize',16,'Location','southwest','Box','off');
            ylim([0 1]) 
            yticks(0:0.2:1)
            title('p=4','FontSize',16,'FontWeight','normal')

           end
            grid on
            ax = gca;             % Get current axes
            ax.GridLineStyle = ':';    % (Optional) Set grid line style
            ax.LineWidth = 2;         % This affects grid line thickness and axes box
            ax.GridColor = [0 0 0];
            x0=10;
            y0=10;
            width=900;
            height=400;      
            pln=pln+1;          
            set(gcf,'position',[x0,y0,width,height])
            hold off
end
saveas(figure(1),fullfile(spath,['DFM_IVLagIPCV.eps']),'epsc');

% Plot
clf
N_plot=2;
pln=1;
plotColumns=2;
figure(1)
for j=1:N_plot
            grid on
            pl=subplot(ceil(N_plot/plotColumns),plotColumns,pln);
            hold on
            
           if j==1
            % Coverage rate Unem
            plot(jhor,0.95*ones(size(1:hor+1)),'k','LineWidth',2)
            p0=plot(jhor,ResultsUnem02.Results.CV.Pool.seqblock', '-','LineWidth',3,'Color', flexiblecolor); 
            p1=plot(jhor,ResultsUnem02.Results.CV.Pool.seqblock_bs1', '-o','LineWidth',3,'Color', blocksize1color);
            p2=plot(jhor,ResultsUnem02.Results.CV.Pool.seqblock_bs2', '-square','LineWidth',3,'Color', blocksize2color); 
            hold off; axis tight
            xlim([0 hor]);
            set(gca,'XTick',0:4:hor,'XTickLabel',cellstr(num2str((0:4:hor)')),'Layer','top','FontSize',14)
            xlabel('Horizon')  
            lh=legend([p0 p1 p2],{'Flexible block size';'Block size=4';'Block size=20'},'FontSize',16,'Location','southwest','Box','off');
            ylim([0 1]) 
            yticks(0:0.2:1)
            title('p=2','FontSize',16,'FontWeight','normal')

            elseif j==2
            % Coverage rate Unem
            plot(jhor,0.95*ones(size(1:hor+1)),'k','LineWidth',2)
            p0=plot(jhor,ResultsUnem04.Results.CV.Pool.seqblock', '-','LineWidth',3,'Color', flexiblecolor); 
            p1=plot(jhor,ResultsUnem04.Results.CV.Pool.seqblock_bs1', '-o','LineWidth',3,'Color', blocksize1color);
            p2=plot(jhor,ResultsUnem04.Results.CV.Pool.seqblock_bs2', '-square','LineWidth',3,'Color', blocksize2color); 
            hold off; axis tight
            xlim([0 hor]);
            set(gca,'XTick',0:4:hor,'XTickLabel',cellstr(num2str((0:4:hor)')),'Layer','top','FontSize',14)
            xlabel('Horizon')  
            %lh=legend([p0 p1 p2],{'Flexible block size';'Block size=4';'Block size=10'},'FontSize',16,'Location','southwest','Box','off');
            ylim([0 1]) 
            yticks(0:0.2:1)
            title('p=4','FontSize',16,'FontWeight','normal')

           end
            grid on
            ax = gca;             % Get current axes
            ax.GridLineStyle = ':';    % (Optional) Set grid line style
            ax.LineWidth = 2;         % This affects grid line thickness and axes box
            ax.GridColor = [0 0 0];
            x0=10;
            y0=10;
            width=900;
            height=400;      
            pln=pln+1;          
            set(gcf,'position',[x0,y0,width,height])
            hold off
end
saveas(figure(1),fullfile(spath,['DFM_IVLagUnemCV.eps']),'epsc');

